home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 December
/
MACPOWER-1997-12.ISO.7z
/
MACPOWER-1997-12.ISO
/
AMUG
/
PROGRAMMING
/
Raven 1.2 Examples.sit
/
Raven 1.2 Examples
/
Quill
/
Source
/
ViewNode.cpp
< prev
next >
Wrap
Text File
|
1997-08-07
|
3KB
|
97 lines
/*
* File: ViewNode.cpp
* Summary: A node representing a view resource for use in a THierarchicalTable.
* Written by: Jesse Jones
*
* Copyright ゥ 1997 Jesse Jones.
* For conditions of distribution and use, see copyright notice in ZTypes.h
*
* Change History (most recent first):
*
* <-> 1/18/96 JDJ Created
*/
#include "ViewNode.h"
#include <ZDocWindow.h>
#include <ZHierarchicalTable.h>
#include "ViewContainer.h"
#include "ViewWindow.h"
// ===================================================================================
// class CViewNode
// ===================================================================================
//---------------------------------------------------------------
//
// CViewNode::~CViewNode
//
//---------------------------------------------------------------
CViewNode::~CViewNode()
{
}
//---------------------------------------------------------------
//
// CViewNode::CViewNode (THierarchicalTable*, CResourceMap*)
//
//---------------------------------------------------------------
CViewNode::CViewNode(THierarchicalTable* table, CResourceMap* rsrcMap) : CResourceNode(table, rsrcMap)
{
}
//---------------------------------------------------------------
//
// CViewNode::CViewNode (THierarchicalTable*, TSubNode*, CResourceMap*, ResID)
//
//---------------------------------------------------------------
CViewNode::CViewNode(THierarchicalTable* table, TSubNode* parent, CResourceMap* rsrcMap, ResID id) : CResourceNode(table, parent, rsrcMap, id)
{
}
//---------------------------------------------------------------
//
// CViewNode::Make
//
//---------------------------------------------------------------
CResourceNode* CViewNode::Make(TSubNode* parent, ResID id)
{
return new CViewNode(mTable, parent, mRsrcMap, id);
}
//---------------------------------------------------------------
//
// CViewNode::EditResource
//
//---------------------------------------------------------------
void CViewNode::EditResource()
{
CViewContainer* container = CViewContainer::GetContainer('View', mID);
if (container != nil) {
TView* top = container->GetTopView();
TWindow* window = dynamic_cast<TWindow*>(top);
ASSERT(window != nil);
window->Select();
} else {
SWindowAttr attr(kRegularLayer);
attr.clickThrough = true;
attr.eraseOnUpdate = false;
TDocWindow* docWind = dynamic_cast<TDocWindow*>(mTable->GetTopView());
SPaneInfo paneInfo("", TRect(32, 32, 256+32, 256+32));
SWindowInfo windInfo(paneInfo, attr);
TWindow* window = new CViewWindow(windInfo, mRsrcMap, mID, docWind->GetDoc());
window->HandleOpen();
}
}